using System;
using ns27;

namespace Triton.Game.Mapping
{
	[Attribute38("ManaCounter")]
	public class ManaCounter : MonoBehaviour
	{
		public Player.Side m_Side => method_2<Player.Side>("m_Side");

		public GameObject m_phoneGemContainer => method_3<GameObject>("m_phoneGemContainer");

		public UberText m_availableManaPhone => method_3<UberText>("m_availableManaPhone");

		public UberText m_permanentManaPhone => method_3<UberText>("m_permanentManaPhone");

		public Player m_player => method_3<Player>("m_player");

		public UberText m_textMesh => method_3<UberText>("m_textMesh");

		public GameObject m_phoneGem => method_3<GameObject>("m_phoneGem");

		public ManaCounter(IntPtr address, string className)
			: base(address, className)
		{
		}

		public ManaCounter(IntPtr address)
			: this(address, "ManaCounter")
		{
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public void Start()
		{
			method_8("Start");
		}

		public void SetPlayer(Player player)
		{
			method_8("SetPlayer", player);
		}

		public Player GetPlayer()
		{
			return method_14<Player>("GetPlayer", Array.Empty<object>());
		}

		public GameObject GetPhoneGem()
		{
			return method_14<GameObject>("GetPhoneGem", Array.Empty<object>());
		}

		public void UpdateText()
		{
			method_8("UpdateText");
		}
	}
}
